Interprocedural Array Alignment Analysis
نویسندگان
چکیده
The specification of efficient data distribution schemes is one of the major tasks in programming DMMPs with data parallel languages. Although there are no optimal strategies for generating such data distributions , several heuristics have been developed to provide some support to the user. We presented an overview of an automatic alignment analysis tool elsewhere, which is able to automatically generate alignment proposals for the arrays accessed in a procedure and thus simplifies the data distribution problem. In this paper we extend our previous work to interprocedural analysis taking into account dynamic realignment. This feature is essential for applying alignment analysis to real programs.
منابع مشابه
Interprocedural Analysis for Parallelization
This paper presents an extensive empirical evaluation of an interprocedural parallelizing compiler, developed as part of the Stanford SUIF compiler system. The system incorporates a comprehensive and integrated collection of analyses, including privatization and reduction recognition for both array and scalar variables, and symbolic analysis of array subscripts. The interprocedural analysis fra...
متن کاملAn Interprocedural Parallelizing Compiler and Its Support for Memory Hierarchy Research
We present several new compiler techniques employed by our interprocedural parallelizing research compiler, Panorama, to improve loop parallelization and the eeciency of memory references. We rst present an overview of the compiler and its associated memory architecture simulation environments. We then present an interprocedural array dataaow analysis, using guarded array regions, for automatic...
متن کاملAlignment Call Graph FRONTEND Data Dependence Information Sequential Profile Information from Weight FinderFortran
The speciication of eecient data distribution schemes is one of the major tasks in programming DMMPs with state of the art parallel languages. Although there are no optimal strategies for generating such data distributions, several heuristics have been developed to provide some support to the user. Alignment analysis, for instance, is able to help nd a good distribution scheme and is furthermor...
متن کاملInterprocedural Analysis to Support Static Scheduling of Parallel Loops and Data Allocation
We present an interprocedural program analysis to support static loop scheduling and data allocation with the objective of reducing remote memory references on CC-NUMA multiprocessors. Given a program which consists of parallel regions in the form of DOALL loops and sequential regions, we build an interprocedural control ow graph and annotate it with array reference information. We then constru...
متن کاملAn Overview of Compiler Techniques for Interprocedural Array Section Analysis
Dependence analysis of arrays is crucial in the compilation of parallel applications, as an inaccurate summary of array usage may reduce the potential for optimizations. Standard scalar techniques are inadequate for they do not accommodate speci c accesses to arrays. Array section analysis describes accesses to arrays at a ner granularity than the scalar techniques. More precisely, array sectio...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1998